Business rules technology, for example, International Business Machine Corporation's Operational Decision Manager software product (ODM), provide a software development environment, along with dedicated, business user interfaces, for automating and governing frequently occurring, repeatable business decisions across processes and applications. The business rules technology delivers the ability to centrally manage the business rules that determine the day-to-day automated decisions that are made in an organization's applications and processes. Business rules technology supports decision automation inside business processes, mobile applications and cloud environments
Business rule management systems allow analysts to carry out collaborative rule authoring and provide easy-to-use decision table editors. Analysts are now able to adapt policies very easily: copying rows, changing cell ranges, adding columns, etc. They are able to enter decision tables quickly with arbitrary cell ranges.
This causes the problem that the sizes of the tables may grow very quickly. Due to the changes, rules are getting more and more fragmented. Tables become difficult to understand, to manage, and require more time to execute.
There are customers that have projects with ten or hundred thousands of rules represented in the form of decision tables. It is well known in the field of business rule management that the number of the rules grows easily and can result in slow processing of decision rules.
Large numbers of rules are difficult to manage, to consolidate, and to execute. Large rule sets constitute a true problem for customers as far as rule management and execution is concerned and may also be considered a major obstacle in making rule management systems more pervasive.
If there are more than 20 attributes over a binary domain, then there will be over 1 million of cases within the rules. Similarly, if the cases involve more than two attributes over a numeric range from 1 to 1000 or more, there will be over 1 million of cases. This illustrates that the number of cases involved in a set of rules is prohibitive to non-automated processing.
A solution is therefore required to compress decision tables without changing their semantics.
Rules define which action to take dependent on the characteristics of a given case, which can have hundreds or thousands of attribute values that potentially influence the action. A rule is more general than another rule of same action if it is applicable to more cases than the other rule and it is more specific than the other rule if it is applicable to fewer cases. Conditions of specific rules will consist of many logical tests, whereas conditions of general rules will consist of a few logical tests. General rules thus are more concise and correspond to a potentially exponential number of specific rules as those specific rules detail all combinations of values for those attributes that the general rule leaves unconstrained.
Although a small number of concise general rules are more desirable than a potentially exponential number of specific rules, it is easier to understand, to write, to organize and to adapt specific rules. For example, organizing rules by geography, topics, and validity periods may lead to a large number of specific rules having similar patterns.
However, the number of specific rules grows exponentially in the number of attributes of the cases. For this reason, even simple rule languages permit more abstract forms of rule conditions by omitting tests for irrelevant attributes, by using wildcards in symbolic values, and by using intervals for regrouping multiple numeric values. The resulting rules permit a reduction of the overall number of rules but are difficult to identify.
Data mining systems automatically generate rules from historical data and are usually able to identify relevant attributes and to introduce abstract forms of rule conditions. However, data mining tools usually generate a huge number of candidate rules and use numeric indicators to select the interesting rules among the candidates. These indicators usually provide poor guidance for selecting rules, meaning that the data mining system will nevertheless end up generating a large number of quite specific rules.
Rule management systems provide facilities for capturing, managing, and adapting relatively large numbers of specific rules. They provide tools for collaborative rule authoring, rule versioning, rule analysis, and rule execution. Whereas those systems are able to manage large sets of rules, they provide only limited support for reducing the number of rules and for avoiding the combinatorial explosion of specific rules.
Even the hierarchical grouping of rules in the form of decision tables does not reduce the number of the rules and is insufficient to prevent an exponential explosion of the number of rules.
Binary decision diagrams and their generalizations are able to represent certain forms of rule sets in a compact form even if this rule set consists of an exponential number of rules. Decision diagrams constitute a factored representation of rule conditions and allow a reduction of the number of rules if many rules with same action have common factors.
Other methods seek to reduce the set of rules. Rule management systems and data-mining systems are able to eliminate rules that are made redundant by the other rules. Whereas redundancy elimination is an important first step to reduce the number of rules, it is not able to merge non-redundant specific rules into more general rules.
Methods for rule set compression replace several specific rules by more general rules and are thus able to reduce the number of rules by modifying the existing rules. For example, pairwise merging of rows in decision tables replaces two similar rows by a single row if those rows have the same actions and agree in all, but one condition column and the disjunction of the two conditions in this column can be represented in the decision table. Other methods apply Karnaugh-map minimization to minimize the conditions of multiple rules of same actions, but ignore the semantics of rule conditions. For example, those methods are not able to merge conditions about interval membership.
Whereas the previous compression methods are exact as they reformulate a rule set into an equivalent rule set, methods based on inductive learning seek to replace specific rules by more general rules while allowing over- and under-generalization. Those compression methods first generate a training set, which consists of cases as well as the actions made by the specific rules for those cases. This training set is then passed to a rule learning module, which finds general rules. The learned rules not only cover the cases in the training set, but also similar cases. Over-generalization occurs if one of these additional cases was not treated by the original rules. Under-generalization occurs if the learned rules do not cover all the cases treated by the original rules. As a consequence, the resulting rule set is not equivalent to the original rule set, but only an approximation of it.
There are also deductive learning techniques that extract a general concept definition from a proof for a given property. Those explanation-based generalization methods cannot directly be applied to the problem of rule set compression. Moreover, there is no guarantee that explanation-based generalization produces a most-general rule as there may be multiple proofs for the given property and some proofs may lead to more general rules than others.
Therefore, there is a need in the art to address the aforementioned problems.